package org.example.ruoxing_admin_springboot3.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.example.ruoxing_admin_springboot3.dao.UserInfoDao;
import org.example.ruoxing_admin_springboot3.dao.UserLoginDao;
import org.example.ruoxing_admin_springboot3.dao.UserRoleRelationDao;
import java.util.List;
@Mapper
public interface UserInfoMapper extends BaseMapper<UserInfoDao> {
    /**
     * @description 获取全部用户信息
     * @author 莫若省
     * @createTime 2024/5/7
    */
    List<UserInfoDao> getUserInfoList();
    /**
     * @description 获取当前用户信息
     * @author 莫若省
     * @createTime 2024/5/7
    */
    List<UserInfoDao> getCurrentUserInfoList(UserLoginDao userInfo);
    /**
     * @description 通过用户id查询用户信息
     * @author 莫若省
     * @createTime 2024/5/7
    */
    UserInfoDao getUserInfoById(String userId);
    /**
     * @description 通过用户id查询用户所有角色列表
     * @author 莫若省
     * @createTime 2024/5/7
    */
    List<UserRoleRelationDao> getRoleListByUserId(String userId);
    /**
     * @description 通过UserId更新用户当前Token
     * @author 莫若省
     * @createTime 2024/5/13
    */
    void updateUserTokenByUserId(UserInfoDao userInfo);
    /**
     * @description 通过token反查当前用户信息
     * @author 莫若省
     * @createTime 2024/5/13
    */
    UserInfoDao getUserInfoByToken(String token);

}
